package com.base.logistics.jdl.bean.print;

import java.io.Serializable;

/**
 * <pre>
 * 打印数据密文
 * </pre>
 * @since 2021-02-26
 */
public class PrePrintDataInfo  implements Serializable {

    /**
     * 运单号
     */
    private String wayBillNo;

    /**
     * 加密的运单数据，如果code不为成功，则没有该字段
     */
    private String perPrintData;

    /**
     * 单个运单查询结果
     */
    private String code;

    /**
     * 单个运单查询响应信息
     */
    private String msg;

    /**
     * 包裹号
     */
    private String packageCode;

    public PrePrintDataInfo() {
    }

    public String getWayBillNo() {
        return this.wayBillNo;
    }

    public String getPerPrintData() {
        return this.perPrintData;
    }

    public String getCode() {
        return this.code;
    }

    public String getMsg() {
        return this.msg;
    }

    public String getPackageCode() {
        return this.packageCode;
    }

    public void setWayBillNo(String wayBillNo) {
        this.wayBillNo = wayBillNo;
    }

    public void setPerPrintData(String perPrintData) {
        this.perPrintData = perPrintData;
    }

    public void setCode(String code) {
        this.code = code;
    }

    public void setMsg(String msg) {
        this.msg = msg;
    }

    public void setPackageCode(String packageCode) {
        this.packageCode = packageCode;
    }

    public boolean equals(final Object o) {
        if (o == this) return true;
        if (!(o instanceof PrePrintDataInfo)) return false;
        final PrePrintDataInfo other = (PrePrintDataInfo) o;
        if (!other.canEqual((Object) this)) return false;
        final Object this$wayBillNo = this.getWayBillNo();
        final Object other$wayBillNo = other.getWayBillNo();
        if (this$wayBillNo == null ? other$wayBillNo != null : !this$wayBillNo.equals(other$wayBillNo)) return false;
        final Object this$perPrintData = this.getPerPrintData();
        final Object other$perPrintData = other.getPerPrintData();
        if (this$perPrintData == null ? other$perPrintData != null : !this$perPrintData.equals(other$perPrintData))
            return false;
        final Object this$code = this.getCode();
        final Object other$code = other.getCode();
        if (this$code == null ? other$code != null : !this$code.equals(other$code)) return false;
        final Object this$msg = this.getMsg();
        final Object other$msg = other.getMsg();
        if (this$msg == null ? other$msg != null : !this$msg.equals(other$msg)) return false;
        final Object this$packageCode = this.getPackageCode();
        final Object other$packageCode = other.getPackageCode();
        if (this$packageCode == null ? other$packageCode != null : !this$packageCode.equals(other$packageCode))
            return false;
        return true;
    }

    protected boolean canEqual(final Object other) {
        return other instanceof PrePrintDataInfo;
    }

    public int hashCode() {
        final int PRIME = 59;
        int result = 1;
        final Object $wayBillNo = this.getWayBillNo();
        result = result * PRIME + ($wayBillNo == null ? 43 : $wayBillNo.hashCode());
        final Object $perPrintData = this.getPerPrintData();
        result = result * PRIME + ($perPrintData == null ? 43 : $perPrintData.hashCode());
        final Object $code = this.getCode();
        result = result * PRIME + ($code == null ? 43 : $code.hashCode());
        final Object $msg = this.getMsg();
        result = result * PRIME + ($msg == null ? 43 : $msg.hashCode());
        final Object $packageCode = this.getPackageCode();
        result = result * PRIME + ($packageCode == null ? 43 : $packageCode.hashCode());
        return result;
    }

    public String toString() {
        return "PrePrintDataInfo(wayBillNo=" + this.getWayBillNo() + ", perPrintData=" + this.getPerPrintData() + ", code=" + this.getCode() + ", msg=" + this.getMsg() + ", packageCode=" + this.getPackageCode() + ")";
    }
}
